LaserKid is a Windows child painting program. The Window is made up of versus sections, these sections are: Frame - The area around the picture being painted. Picture - The actual picture that can be painted. Buttons - The buttons are on the left and right side of the window Palette - Along the bottom of the window is the possible colors that can be used. Below is a description of the various sections. Frame - The frame is the decorative background for the Window. As the user clicks the "frame" button, the program will search for the next file in the sequence and use that as the frame. The files must reside at the INI file option set for [General], "Frames" The files must be named 0b.bmp, 1b.bmp, 2b.bmp, ... 99b.bmp. The frame must be a BMP file with the following constraints: Width = 640 Height = 480 Bits Per Pixel = 8 Planes = 1 The palette entries of the bmp file must be the same as the laserkid.pal file. Picture - The picture is the part the child can paint on. As the user clicks the "pic" button, the program will search for the next file in the sequence and use that as the picture. The files must reside at the INI file option set for [General], "Pictures" The files must be named 0.bmp, 1.bmp, 2.bmp, ... 99.bmp. The picture must be a BMP file with the following constraints: Width = 496 Height = 372 Bits Per Pixel = 8 Planes = 1 The palette entries of the bmp file must be the same as the laserkid.pal file. Palette - This section allows the user to select the current color. The palette is made up of the 16 basic colors, the current color is the color swatch to the right of the palette. If the video system is 256 colors or more, the user can click on the current color swatch to bring up a dlg box of all avaible colors. When the user double clicks on one of the colors in this dlg box, that will be come the new current color. Buttons - LEFT SIDE BUTTONS... Pic - Previously explained, see Picture above. Save - Allow the user to save the current picture. The user can save the picture with a filename upto 6 letters. The file will be saved with the first one or two characters set the same as the original picture that this save is based on. The filename extention will be "lkb". The file will be saved to the directory specified in the INI file under the [General], "Saves" area If the filename already exists, the user will be asked if they want to overwrite the current file. Load - This button will display all the saved files that are found in the directory specified in the INI file under the [General], "Saves" area The user may click on one of the choices and then click ok to bring up the saved file. Print - This button will display a dialog box allowing the user to print the picture in one of 3 sizes. The picture will always be printed in landscape mode. Frame - Previously explained, see Frame above. Music - Plays the wave file associated ith the current image by calling a music program. Calls the music program (lkmusic.exe) with one parameter. The parameter is a global memory block. Lock in the memory block as DWORDS. The DWORDs are... HWND of LaserKid Song Number Rect.top Rect.bottom Rect.left Rect.right After extracting the information, the music program is required to free the memory block. At start up, the music program must send its hWnd back to Laserkid (SendMessage(hLaserKid, WM_COMMAND, WM_USER+500, hWndMusic)) When the song is over, notify LaserKid (SendMessage(hLaserKid, WM_COMMAND, WM_USER+501, 0)) If the user aborts the song, the music program will receive a message (SendMessage(hWndMusic, WM_COMMAND, WM_USER+501, 0)) The music program is expected to terminate. Quit - Quits the program. RIGHT SIDE BUTTONS... Crayon - Makes the current paint tool a crayon. Marker - Makes the current paint tool a marker. Flood Fill - Makes the current paint tool a flood fill bucket. Eraser - Makes the current paint tool an eraser. The user may erase small areas that they have just painted, but may not erase prior painting. Each time the paint tool is changed, the ability to erase is updated. Kid Mode - Keeps the painting with in the black lines of the area that the user first clicks. This is an on/off toggle Undo - This button will undo the users whole last operation. The undo uses the same basis of undo as the eraser, but unlike the eraser the whole last operation is undo, not just an area the user specifies. Sky - This button will display a dialog box of the various skys the user can have placed in the image. The user must select one of the skys then select ok. For the sky to work, the image must have the 0,0 pixel set to white when the picture is first loaded.